[<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]
##############################################################################
###+--------------+###########################################################
#+-| SELECT_DRIVE |------------------------------------+######################
#| +--------------+ Changes the current drive to drive |######################
#+-----------------------------------------------------+######################
##############################################################################
##############################################################################
#+--| Summary |----------------+##############################################
#|     #INCLUDE system.hdr     |##############################################
#+-----------------------------+##############################################
##############################################################################
##############################################################################
#+--| Syntax |------------------------------+#################################
#|     PROCEDURE select_drive PROTOTYPE     |#################################
#|      PARAMETERS VALUE UINT drive         |#################################
#+------------------------------------------+#################################
##############################################################################
##############################################################################
#####+---| Description |------------------------------------------------+#####
#####| The select_drive procedure changes the current drive to drive.   |#####
#####| select_drive only manipulates the current drive, not the current |#####
#####| directory.                                                       |#####
#####| ---------------------------------------------------------------- |#####
#####| If the drive requested is invalid, then select_drive returns     |#####
#####| without changing the drive.  Use the curdrive() function in      |#####
#####| conjunction with select_drive to assure the drive requested is   |#####
#####| valid.  see examples.                                            |#####
#####| ---------------------------------------------------------------- |#####
#####| If the drive requested is not ready (i.e., there is no disk in   |#####
#####| the drive) the DOS calls its critical error handler, which       |#####
#####| presents the message: "Abort, Retry, Ignore?".  To avoid the     |#####
#####| error going through DOS, use the critical procedure.             |#####
#####+------------------------------------------------------------------+#####
##############################################################################
##############################################################################
#########+--| Example 1 |-------------------------------------------+#########
#########| *    Select drive C: to be the default drive.            |#########
#########|                                                          |#########
#########| select_drive( 3 )                                        |#########
#########+----------------------------------------------------------+#########
##############################################################################
##############################################################################
#########+--| Example 2 |-------------------------------------------+#########
#########| *    Fill an array of valid drives.  Array element 0     |#########
#########| *    represents drive A:, element 1 drive B: etc..       |#########
#########|                                                          |#########
#########| i = 0                                                    |#########
#########| DO WHILE .T.                                             |#########
#########|     select_drive(i)                                      |#########
#########|     IF curdrive() <> i                                   |#########
#########|         EXIT                                             |#########
#########|     ENDIF                                                |#########
#########|     valid_drive[i] = .T.                                 |#########
#########|     i = i + 1                                            |#########
#########| ENDDO                                                    |#########
#########|                                                          |#########
#########| DO WHILE i < 26                                          |#########
#########|     valid_drive[i] = .F.                                 |#########
#########|     i = i + 1                                            |#########
#########| ENDDO                                                    |#########
#########+----------------------------------------------------------+#########
##############################################################################
##############################################################################
#########+--| Example 3 |-------------------------------------------+#########
#########| *    To avoid the DOS critical error handler, use the    |#########
#########| *    critical procedure prior to selecting a new drive.  |#########
#########|                                                          |#########
#########| DO critical WITH my_critical_procedure                   |#########
#########| select_drive( 1 )                                        |#########
#########+----------------------------------------------------------+#########
##############################################################################

See Also: critical curdir() curdrive() SET DEFAULT TO
This page created by ng2html v1.05, the Norton guide to HTML conversion utility. Written by Dave Pearson